<button class="button">
  Button
</button>
<style>
/* From Uiverse.io by Roopaish - Tags: button, bubble, animated */
button {
  outline: none;
  border: none;
  cursor: pointer;
  padding: 10px 20px;
  font-size: 12px;
  font-weight: 700;
  color: hsl(0, 0%, 100%);
  border-radius: 10px;
  text-transform: uppercase;
  transition: all 0.2s ease-in-out;
  position: relative;
  background-color: #ff0081;
  box-shadow: rgba(233, 30, 99, 0.5);
}

button::after,
button::before {
  transition: all 0.2s ease-in-out;
}

button::before {
  z-index: -1;
  position: absolute;
  content: "";
  left: -2em;
  right: -2em;
  top: -2em;
  bottom: -2em;
  background-repeat: no-repeat;
  background-image: radial-gradient(circle, #ff0081 20%, transparent 20%),
    radial-gradient(circle, transparent 10%, #ff0081 20%, transparent 20%),
    radial-gradient(circle, transparent 10%, white 20%, transparent 20%),
    radial-gradient(circle, #ff0081 20%, transparent 20%),
    radial-gradient(circle, transparent 10%, #ff0081 20%, transparent 20%),
    radial-gradient(circle, #ff0081 20%, transparent 20%),
    radial-gradient(circle, transparent 10%, #ff0081 20%, transparent 20%),
    radial-gradient(circle, #ff0081 20%, transparent 20%),
    radial-gradient(circle, transparent 10%, #ff0081 20%, transparent 20%),
    /*  */
      radial-gradient(circle, transparent 10%, #ff0081 20%, transparent 20%),
    radial-gradient(circle, #ff0081 20%, transparent 20%),
    radial-gradient(circle, transparent 10%, white 20%, transparent 20%),
    radial-gradient(circle, #ff0081 20%, transparent 20%),
    radial-gradient(circle, transparent 10%, #ff0081 20%, transparent 20%),
    radial-gradient(circle, #ff0081 20%, transparent 20%),
    radial-gradient(circle, transparent 10%, white 20%, transparent 20%);
  background-size: 10% 10%, 20% 20%, 15% 15%, 20% 20%, 18% 18%, 10% 10%, 15% 15%,
    10% 10%, 18% 18%, 15% 15%, 20% 20%, 18% 18%, 20% 20%, 15% 15%, 10% 10%,
    20% 20%;
  background-position: 18% 40%, 20% 31%, 30% 30%, 40% 30%, 50% 30%, 57% 30%,
    65% 30%, 80% 32%, 15% 60%, 83% 60%, 18% 70%, 25% 70%, 41% 70%, 50% 70%,
    64% 70%, 80% 71%;
}

button:hover::before {
  background-position: 5% 44%, -5% 20%, 7% 5%, 23% 0%, 37% 0, 58% -2%, 80% 0%,
    100% -2%, -5% 80%, 100% 55%, 2% 100%, 23% 100%, 42% 100%, 60% 95%, 70% 96%,
    100% 100%;
  background-size: 0% 0%;
  transition: background-position 0.5s ease-in-out,
    background-size 0.75s ease-in-out;
}
</style>
